﻿using System;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Graphics;

namespace Terraria.Graphics.Effects
{
	// Token: 0x0200039B RID: 923
	public abstract class Overlay : GameEffect
	{
		// Token: 0x17000231 RID: 561
		// (get) Token: 0x06002088 RID: 8328 RVA: 0x00016E22 File Offset: 0x00015022
		public RenderLayers Layer
		{
			get
			{
				return this._layer;
			}
		}

		// Token: 0x06002089 RID: 8329 RVA: 0x00016E2A File Offset: 0x0001502A
		public Overlay(EffectPriority priority, RenderLayers layer)
		{
			this._priority = priority;
			this._layer = layer;
		}

		// Token: 0x0600208A RID: 8330
		public abstract void Draw(SpriteBatch spriteBatch);

		// Token: 0x0600208B RID: 8331
		public abstract void Update(GameTime gameTime);

		// Token: 0x04003D11 RID: 15633
		public OverlayMode Mode = OverlayMode.Inactive;

		// Token: 0x04003D12 RID: 15634
		private RenderLayers _layer = RenderLayers.All;
	}
}
